iT邦幫忙

2025 iThome 鐵人賽

DAY 29
0
生成式 AI

《AI 新手到職場應用:深度學習 30 天實戰》系列 第 29

大型語言模型(LLM)運作原理淺談

  • 分享至 

  • xImage
  •  

我們每天使用的智慧應用幾乎都與「語言理解」有關。
像是當你對 ChatGPT 提問、請 Google 翻譯一段文字、或讓 Siri 幫你設鬧鐘時,
背後其實都有一個核心能力,就是讓電腦「理解」並「生成」語言。

而這一切的基礎,就是「大型語言模型(Large Language Model, LLM)」。
它是近幾年人工智慧發展中最重要的突破之一,
也是 ChatGPT、Gemini(原 Bard)、Claude 等智慧助理的背後引擎。

本次介紹的目的,就是要用淺顯易懂的方式,帶大家了解這些模型的
基本運作邏輯、訓練方式、語言理解機制,以及它們的限制與未來發展方向。

我們不會使用艱深的數學公式,而是透過實際例子與比喻,一步步揭開 LLM 的運作秘密。

https://ithelp.ithome.com.tw/upload/images/20251011/20169196DxkjfZdYoq.jpg

那就讓我們開始吧!


什麼是大型語言模型(LLM)?

大型語言模型是一種能「讀懂」並「生成」人類語言的人工智慧系統,
它的核心任務其實非常簡單,就是「預測下一個字會是什麼」。
但當這個任務被放大到龐大的語料與上千億個參數後,
模型就能自動學會語言規律、語意關係,甚至邏輯結構。

如果舉個例子來說,當模型看到「我今天心情很」,它會根據訓練經驗,
預測下一個字最有可能是「」、「開心」、「」等等,
再依照上下文選出最合理的一個。

與傳統 AI 的差別

早期的語言處理模型(如基於規則或統計的系統)需要人類手動定義語法、詞彙關係。
但 LLM 則完全不同,
因為它是透過深度學習(Deep Learning)與海量語料自我學習語言結構。
因此它能理解不同語言、方言、甚至幽默或隱喻。
(幽默我是不知道,但我用起來蠻難笑的)

而在其中,為人熟知的代表模型大約有以下幾個:

GPT 系列(OpenAI):

ChatGPT 背後的核心模型,擅長生成流暢文本。

Gemini(Google):

結合搜尋與生成的多模態模型。

LLaMA(Meta):

可自行微調的開源模型。

XLM-R(Facebook AI):

多語言理解模型,支援超過 100 種語言。

這些模型都是我們日常比較常見的,甚至可以說是我們工作的好夥伴,
而這些模型的共同點是:它們都建立在相同的神經網路架構上 - 「Transformer」。


LLM 的三個訓練階段

要打造一個實用的 LLM,需要經過三個重要階段。每個階段都有不同的目標和方法。
以下就讓我們一個一個來介紹:

階段一:預訓練

預訓練是 LLM 的基礎階段。
在這個階段,模型會讀取海量的文本資料,包括網頁、書籍、論文、程式碼等等。
在 GPT-3 中使用了約 45TB 的文本資料,這相當於數億本書的內容,資料量非常龐大。

在訓練過程中,模型不斷練習「預測下一個字」這個任務。
經過數億次的練習,模型就可以逐漸學會語言的規律。
它可能可以學會什麼樣的句子是通順的,甚至也可以說它學會了世界知識。

比如它知道巴黎是法國的首都,
知道水在攝氏 100 度會沸騰,
知道如果 A 大於 B 且 B 大於 C,那麼 A 就大於 C...。

但與此同時,這個階段的訓練也需要大量計算資源。
根據資料,光是訓練 GPT-3 估計花費了超過 460 萬美元,需要數千張高效能 GPU,
但跟人類學習不一樣,它的訓練時間只需數週到數月,
相對的,如果讓一個人讀一萬本書,我們的速度就可能只是它的1/10000000......。

階段二:微調

預訓練後的模型雖然懂很多知識,但它還不太會「對話」。
它可能會給出不太有用的回答,或是回答得太冗長,這個時候就需要微調。

微調有兩種主要方法:
第一種是「指令微調」。
訓練團隊會準備數萬個「指令-回答」的配對,
比如說「用一句話解釋量子力學」配對一個精簡的回答,
「將這句話翻譯成英文」配對正確的翻譯結果等等。
以此模型就可以透過學習這些範例,逐漸學會如何回應各種使用者需求。

第二種方法則更進階,叫做「人類回饋強化學習」(RLHF)。
這個方法讓模型的回答更符合人類期待。

流程是這樣的:
先讓模型對同一個問題生成多個回答,然後請人類評分員對這些回答排序,判斷哪個最好、哪個最差。
接著訓練一個「獎勵模型」來預測人類的偏好,
最後用強化學習技術讓模型往高分的方向優化加強。

像我們最常使用的 ChatGPT ,它的成功很大程度歸功於 RLHF。
這個技術讓 AI 的回答變得更有幫助、更友善、更符合人類的價值觀。
它也能減少模型產生有害或不當內容的機率。

階段三:推理

推理階段就是我們實際使用 LLM 的時候。
當你輸入一個問題,比如「請推薦台北好吃的拉麵店」,
系統會先將你的文字切成 Token(稍後會詳細解釋),
然後這些 Token 會送進模型,經過數十層的神經網路處理。,
模型會預測下一個最可能的 Token,然後繼續預測下一個,直到生成完整的回答。

整個過程看起來很快,但其實模型正在進行數億次的數學運算。
這就是為什麼使用大型 LLM 需要強大的伺服器,也是為什麼部分 API 服務需要收費。


Token:模型處理文字的方式

LLM 不是直接處理文字,而是將文字切成更小的單位,叫做 「Token」(詞元),
這是理解 LLM 的重要概念,因此我們現在就來看看它,到底是什麼?

中文的 Token 化相對簡單,例如「我喜歡吃蘋果」通常會被切成
」、「喜歡」、「」、「蘋果」四個 Token,
大致上一個中文字等於一個 Token。

而英文的 Token 化就比較複雜了。
"I love apples" 會被切成
"I"、" love"、" apples" 三個 Token。
注意空格會包含在 Token 裡。英文平均一個字大約等於 0.75 個 Token。

而除了我們人使用的文字之外,程式碼也會被** Token 化**。
例如像"ChatGPT" 可能會被切成 "Chat"、"G"、"PT" 三個 Token,
因為這個詞不在模型的詞彙表裡。

而「為什麼需要 Token?」,因為模型只能處理數字,不能直接處理文字,
而若是每個 Token 都對應一個數字 ID ,是平衡效率與表達能力的最佳方案。

如果以單個字母為單位,序列會太長;如果以整個句子為單位,詞彙表會太大,
而Token 就提供了最佳的折衷方案。


Transformer:讓 LLM 理解上下文

幾乎所有現代 LLM 都基於 「Transformer 架構」。
這個架構在 2017 年由 Google 的研究團隊提出,徹底改變了自然語言處理領域。

Transformer 最重要的創新是自注意力機制(Self-Attention),
這個機制讓模型能理解句子中字詞之間的關係。

舉個例子。當你看到「銀行不能貸款給那位欠債的老闆」這句話時,
你知道「銀行」指的是金融機構,不是河岸。你也知道「貸款」的主詞是「銀行」,
「欠債的」是在修飾「老闆」,
人類能自然理解這些關係,但電腦其實是需要特殊的機制。

自注意力機制讓模型計算每個字對其他字的「注意力權重」,
當模型處理「銀行」這個字時,它會同時考慮句子中所有其他字,然後發現「貸款」這個字特別重要,
給予高注意力權重,這樣模型就能理解「銀行」和「貸款」之間的關係。


如何控制 AI 的回答風格?

模型預測下一個字時,並不一定是選機率最高的字,而我們可以透過調整參數來控制生成的風格。

Temperature(溫度)是最重要的參數之一,
當溫度越低,模型越傾向選擇高機率的字,回答會更保守、更一致;
而當溫度越高,模型會更隨機選擇,回答會更有創意,但也可能更不連貫。

當你需要生成程式碼或回答事實性問題時,應該使用低溫度(0.1-0.3)
這樣模型會給出最確定的答案;
而當你需要創意寫作或腦力激盪時,可以使用高溫度(0.8-1.0)
讓模型給出更多樣化的回答。

另一個常用參數是 Top-p,也叫 Nucleus Sampling
這個參數設定一個「累積機率閾值」,只從累積機率達到這個閾值的候選字中選擇。
比如 Top-p 設為 0.9,模型會先將所有候選字按機率排序,然後只從累積機率達到 90% 的字中選擇。
這樣既保持了多樣性,又避免選到太離譜的字。

這兩個參數通常搭配使用。一般的對話應用可能使用 Temperature=0.7 和 Top-p=0.9,
在可控性和創意性之間取得平衡。

參考資料:
https://medium.com/seaniap/ai%E8%BC%B8%E5%87%BA%E7%9A%84%E8%AA%BF%E7%AF%80%E8%A1%93-%E4%BA%86%E8%A7%A3openai%E7%9A%84temperature%E8%88%87top-p%E5%8F%83%E6%95%B8-d849e29dc505


以上就是我們今天的學習了,
明天就是此版最後一篇文章,
我們就來看看在這30天我們到底學習了什麼?
有沒有真的更了解 AI,更能與它和平共處了。


上一篇
職場專案實戰 - 客服常見問題自動分類系統
下一篇
總結篇:30 天之後,你如何把 AI 真正帶進職場?
系列文
《AI 新手到職場應用:深度學習 30 天實戰》30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言